package com.tbit.uqbike.service.business;


import com.tbit.uqbike.object.pojo.TerAlarm;
import com.tbit.common.entity.view.Result;

import java.util.List;

/**
 * 终端历史告警service
 *
 * @author Leon
 * 2017年2月24日 下午4:09:17
 */
public interface TerAlarmService {
    /**
     * 根据设备编号分页查询
     *
     * @param machineNO
     * @param alarmType
     * @param startTime
     * @param endTime
     * @param rowCount
     * @param pageNO
     * @return
     */
    List<TerAlarm> getByMachineNOAndTime(String machineNO, Integer alarmType, Long startTime, Long endTime, Integer rowCount, Integer pageNO);

    /**
     * 分页获取总数
     *
     * @param machineNO
     * @param alarmType
     * @param startTime
     * @param endTime
     * @return
     */
    Integer getTotal(String machineNO, Integer alarmType, Long startTime, Long endTime);

    /**
     * 接收实时告警
     *
     * @param terAlarm
     */
    void recAlarm(TerAlarm terAlarm);

    /**
     * 导出
     * @param machineNO 设备编号
     * @param alarmType 类型
     * @param startTime 开始时间
     * @param endTime 结束时间
     * @return 文件名
     */
    Result<Object> exportExcel(String machineNO, Integer alarmType, Long startTime, Long endTime, String userCode);
}